#ifndef TIME_H
#define TIME_H

#include <QtGui> // SERIALIZZAZIONE

#include <string>
using namespace std;

class PTime
{
public:
    PTime(); // costruttore di default
    PTime(const PTime& t); // Costruttore di copia
    PTime(
            int  hour,
            int   min,
            int   sec,
            int   day,
            int   mon,
            int  year,
            long time
            );
    PTime& operator = ( const PTime& t ); // Operatore di assegnamento
    void Now(void); // setta data ed ora corrente

     int  getHour ( void ) const;
     int   getMin ( void ) const;
     int   getSec ( void ) const;
     int   getDay ( void ) const;
     int   getMon ( void ) const;
     int  getYear ( void ) const;
    long  getTime ( void ) const;

    void  setHour (  int hour );
    void   setMin (  int  min );
    void   setSec (  int  sec );
    void   setDay (  int  day );
    void   setMon (  int  mon );
    void  setYear (  int year );
    void  setTime ( long time );

    string StrDate(void) const; // restituisce una data in formato gg/mm/aaaa
    string StrTime(void) const; // restituisce un'ora in formato hh:mm:ss
    string Str(void) const;     // restituisce data ed ora in formato gg/mm/aaaa - hh:mm:ss

private:
	int m_hour;
	int m_min;
	int m_sec;
	int m_day;
	int m_mon;
	int m_year;

	long m_time;
};

Q_DECLARE_METATYPE(PTime) // SERIALIZZAZIONE

#endif
